package com.ruoyi.driver.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 车辆管理对象 tb_car
 * 
 * @author ruoyi
 * @date 2025-08-18
 */
public class TbCar extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 车辆ID */
    @Excel(name = "车辆ID")
    private Integer carId;

    /** 归属城市 */
    @Excel(name = "归属城市")
    private String city;

    /** 车辆级别编码 */
    @Excel(name = "车辆级别编码")
    private String carLevelCode;

    /** 车辆品牌 */
    @Excel(name = "车辆品牌")
    private String brand;

    /** 车辆型号 */
    @Excel(name = "车辆型号")
    private String model;

    /** 车型描述 */
    @Excel(name = "车型描述")
    private String modelDesc;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String licensePlate;

    /** 车辆行驶总里程（公里） */
    @Excel(name = "车辆行驶总里程", readConverterExp = "公=里")
    private BigDecimal totalMileage;

    /** 电池续航剩余（公里） */
    @Excel(name = "电池续航剩余", readConverterExp = "公=里")
    private BigDecimal batteryMileage;

    /** 车辆状态：1-启用 2-停用 */
    @Excel(name = "车辆状态：1-启用 2-停用")
    private Long carStatus;

    /** 是否绑定司机：1-是 0-否 */
    @Excel(name = "是否绑定司机：1-是 0-否")
    private Long isBoundDriver;

    /** 司机Id */
    @Excel(name = "司机Id")
    private Long driverId;

    /** 操作人 */
    @Excel(name = "操作人")
    private String operator;

    public void setCarId(Integer carId) 
    {
        this.carId = carId;
    }

    public Integer getCarId() 
    {
        return carId;
    }

    public void setCity(String city) 
    {
        this.city = city;
    }

    public String getCity() 
    {
        return city;
    }

    public void setCarLevelCode(String carLevelCode) 
    {
        this.carLevelCode = carLevelCode;
    }

    public String getCarLevelCode() 
    {
        return carLevelCode;
    }

    public void setBrand(String brand) 
    {
        this.brand = brand;
    }

    public String getBrand() 
    {
        return brand;
    }

    public void setModel(String model) 
    {
        this.model = model;
    }

    public String getModel() 
    {
        return model;
    }

    public void setModelDesc(String modelDesc) 
    {
        this.modelDesc = modelDesc;
    }

    public String getModelDesc() 
    {
        return modelDesc;
    }

    public void setLicensePlate(String licensePlate) 
    {
        this.licensePlate = licensePlate;
    }

    public String getLicensePlate() 
    {
        return licensePlate;
    }

    public void setTotalMileage(BigDecimal totalMileage) 
    {
        this.totalMileage = totalMileage;
    }

    public BigDecimal getTotalMileage() 
    {
        return totalMileage;
    }

    public void setBatteryMileage(BigDecimal batteryMileage) 
    {
        this.batteryMileage = batteryMileage;
    }

    public BigDecimal getBatteryMileage() 
    {
        return batteryMileage;
    }

    public void setCarStatus(Long carStatus) 
    {
        this.carStatus = carStatus;
    }

    public Long getCarStatus() 
    {
        return carStatus;
    }

    public void setIsBoundDriver(Long isBoundDriver) 
    {
        this.isBoundDriver = isBoundDriver;
    }

    public Long getIsBoundDriver() 
    {
        return isBoundDriver;
    }

    public void setDriverId(Long driverId) 
    {
        this.driverId = driverId;
    }

    public Long getDriverId() 
    {
        return driverId;
    }

    public void setOperator(String operator) 
    {
        this.operator = operator;
    }

    public String getOperator() 
    {
        return operator;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("carId", getCarId())
            .append("city", getCity())
            .append("carLevelCode", getCarLevelCode())
            .append("brand", getBrand())
            .append("model", getModel())
            .append("modelDesc", getModelDesc())
            .append("licensePlate", getLicensePlate())
            .append("totalMileage", getTotalMileage())
            .append("batteryMileage", getBatteryMileage())
            .append("carStatus", getCarStatus())
            .append("isBoundDriver", getIsBoundDriver())
            .append("driverId", getDriverId())
            .append("createTime", getCreateTime())
            .append("operator", getOperator())
            .toString();
    }
}
